package com.student.user.service;

import com.student.common.entity.User;

/**
 * 用户服务接口
 * 
 * @author student
 * @date 2025
 */
public interface UserService {
    
    /**
     * 用户登录
     */
    User login(String username, String password);
    
    /**
     * 用户登出
     */
    void logout(String username);
    
    /**
     * 根据用户名获取用户信息
     */
    User getUserByUsername(String username);
    
    /**
     * 用户注册
     */
    boolean register(User user);
    
    /**
     * 更新用户信息
     */
    boolean updateUser(User user);
    
    /**
     * 修改密码
     */
    boolean changePassword(String username, String oldPassword, String newPassword);
    
    /**
     * 创建用户（用于学生/教师创建时同步创建用户）
     */
    boolean createUser(String username, String realName, String role, String relatedId, String email, String phone);
    
    /**
     * 更新用户信息（用于学生/教师更新时同步更新用户）
     */
    boolean updateUserInfo(String username, String realName, String email, String phone);
    
    /**
     * 删除用户（用于学生/教师删除时同步删除用户）
     */
    boolean deleteUser(String username);
}
